package test;

import java.util.List;

import org.hibernate.Session;

import beans.Encuesta;
import beans.Pregunta;
import beans.Respuesta;
import beans.RespuestaSeleccionada;
import beans.ResultadoEncuesta;
import beans.ResultadoPregunta;

import services.EncuestaSrv;
import uady.sicei.domain.AlumnoUADYMatriculado;
import uady.sicei.domain.Grupo;
import uady.sicei.domain.calendarizacion.PeriodoCurso;
import uady.sicei.service.administracionExamenes.GrupoAlumnosService;
import uady.sicei.service.calendarizacion.PeriodoCursoService;
import Utils.HibernateExecuter;
import Utils.HibernateUtil;
import Utils.IHibernateHQLQuery;

public class ResponderEncuesta {
	public static Session session;
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		ResultadoPregunta resultadoPregunta=new ResultadoPregunta();
		Encuesta encuesta=EncuestaSrv.getInstance().consultarEncuestasById(14);
		Pregunta pregunta1=encuesta.getFormatoCuestionario().getCatalogoPreguntas().get(0);
		System.out.println(pregunta1.getPreguntaString());
		
		RespuestaSeleccionada respuestaSeleccionada= new RespuestaSeleccionada();
		respuestaSeleccionada.setId(1);
		respuestaSeleccionada.setPonderacion(1);
		respuestaSeleccionada.setRespuesta("soy la respuesta1 seleccionada");
		
		RespuestaSeleccionada respuestaSeleccionada2= new RespuestaSeleccionada();
		respuestaSeleccionada2.setPonderacion(64);
		respuestaSeleccionada2.setRespuesta("soy la respuesta2 seleccionada");
		
		
		resultadoPregunta.setPregunta(pregunta1);
		resultadoPregunta.agregarRespuestaSeleccionada(respuestaSeleccionada);
		resultadoPregunta.agregarRespuestaSeleccionada(respuestaSeleccionada2);
		
		ResultadoEncuesta resultadoEncuesta= new ResultadoEncuesta();
		resultadoEncuesta.agregarPreguntaRespondida(resultadoPregunta);
		encuesta.setResultadoEncuesta(resultadoEncuesta);
		
		EncuestaSrv.getInstance().actualzarEncuesta(encuesta);

	}
	
	private void addUser(Object user){
    session=	HibernateUtil.getSessionFactory().openSession();
	session.beginTransaction();
//	User usuario= new User();
//	usuario.setId(id);
	//usuario.setPass(pass);
	//usuario.setUsuario(user);
	session.saveOrUpdate(user);
	session.getTransaction().commit();
	session.close();
	//session.close();
		
	}
	
	private void save(String id,Object usuario){
		session=	HibernateUtil.getSessionFactory().openSession();
		session.beginTransaction();
		session.saveOrUpdate(id,usuario);
		session.getTransaction().commit();
		session.close();
		
	}
	
	private Object consultUser(Class c,String id){
		
		 session=	HibernateUtil.getSessionFactory().openSession();
		session.beginTransaction();
	Object	 usuario= session.get(c, Integer.parseInt(id));
		// System.out.println(usuario.getPass());
			//System.out.println(usuario.getId());
			//System.out.println(usuario.getUsuario());
		 
		 session.close();
		
		return usuario;
		
	}
	
	private void removerUser(Object user){
		session= HibernateUtil.getSessionFactory().openSession();
		session.beginTransaction();
		session.delete(user);
	
		session.getTransaction().commit();
		session.close();
		
	}
	
	private Object gettAllUsers(final Class c){
		
			HibernateExecuter hibernateExecuter= new HibernateExecuter();
Object objetos=null;
try {
	objetos = (Object) hibernateExecuter.executeQuery
						(
								new IHibernateHQLQuery() 
								{
									public Object executeQuery(Session session) 
									{
										
									Object objetos=session.createCriteria(c).list();
										
										return objetos;
									}
								}
						);
} catch (Exception e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
}

return objetos;
		
	}
	


}
